package resource.models;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;

import resource.models.Board;
import resource.models.Player;

/**
 * Class that wraps the message payload to clients
 */
public class BoardPayload extends Message implements Serializable {

	private Board board;
	private List<Player> playerList;
	private Player whoseTurn;
	
	public BoardPayload(Board board, List<Player> playerList, Player whoseTurn, UUID gameId) {
		super(gameId);
		this.board = board;
		this.playerList = playerList;
		this.whoseTurn = whoseTurn;
	}
	
	//No setters, message payload should be same for all clients each time it's created new
	
	public Board getBoard() {
		return board;
	}
	
	public List<Player> getPlayerList() {
		return playerList;
	}
	
	public Player whoseTurn() {
		return whoseTurn;
	}
}
